---
title: Cloudflare Workers 用トランスポート
description: Connect your Agents SDK agents from Cloudflare Workers/workerd using a dedicated transport.
---

import { Aside, Steps, Code } from '@astrojs/starlight/components';
import cloudflareBasicExample from '../../../../../../examples/docs/extensions/cloudflare-basic.ts?raw';

Cloudflare Workers とその他の workerd ランタイムでは、グローバルな `WebSocket` コンストラクタを使ってアウトバウンド WebSockets を開くことはできません。これらの環境から Realtime Agents に接続しやすくするために、extensions パッケージは `fetch()` ベースのアップグレードを内部で実行する専用の transport を提供します。

<Aside type="caution">
  このアダプターはまだベータ版です。エッジケースの問題やバグが発生する可能性があります。
  問題は [GitHub issues](https://github.com/openai/openai-agents-js/issues)
  から報告してください。迅速に対応します。Workers で Node.js 風の API
  を使いたい場合は、`nodejs_compat` の有効化を検討してください。
</Aside>

## セットアップ

<Steps>

1. **extensions パッケージをインストールします。**

   ```bash
   npm install @openai/agents-extensions
   ```

2. **transport を作成し、セッションにアタッチします。**

   <Code lang="typescript" code={cloudflareBasicExample} />

3. **`RealtimeSession` を接続します。**

   ```typescript
   await session.connect({ apiKey: 'your-openai-ephemeral-or-server-key' });
   ```

</Steps>

## 注意事項

- Cloudflare の transport は内部で `Upgrade: websocket` 付きの `fetch()` を使用し、ソケットの `open` イベントを待たずに進行します。workerd の API に合わせた動作です
- この transport 使用時も、すべての `RealtimeSession` 機能（ツール、ガードレールなど）は通常どおり動作します
- 開発中の詳細ログ確認には `DEBUG=openai-agents*` を使用してください
